package com.finance.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDate;
import java.time.LocalTime;

/**
 * 券回兑数据实体类
 */
@Data
@TableName("ods_coupon_redeem")
public class CouponRedeem {
    
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /**
     * 回兑影城名称
     */
    private String redeemCinemaName;
    
    /**
     * 影城ID
     */
    @ApiModelProperty(value = "影城ID", required = true)
    private String cinemaId;
    
    /**
     * 回兑影城编码
     */
    private String redeemCinemaCode;
    
    /**
     * 回兑影城所属区域
     */
    private String redeemCinemaArea;
    
    /**
     * 回兑时间
     */
    private LocalDateTime redeemTime;
    
    /**
     * 订单号
     */
    private String orderNo;
    
    /**
     * 兑换渠道
     */
    private String redeemChannel;
    
    /**
     * 兑换渠道编码
     */
    private String redeemChannelCode;
    
    /**
     * 券类型
     */
    private String couponType;
    
    /**
     * 券类型编码
     */
    private String couponTypeCode;
    
    /**
     * 券模版名称
     */
    private String couponTemplateName;
    
    /**
     * 券模版编码
     */
    private String couponTemplateCode;
    
    /**
     * 自定义券分类
     */
    private String customCouponCategory;
    
    /**
     * 券来源编码
     */
    private String couponSourceCode;
    
    /**
     * 券批次
     */
    private String couponBatch;
    
    /**
     * 券码
     */
    private String couponCode;
    
    /**
     * 券数量
     */
    private Integer couponQuantity;
    
    /**
     * 券面值
     */
    private BigDecimal couponFaceValue;
    
    /**
     * 券基础售价
     */
    private BigDecimal couponBasePrice;
    
    /**
     * 券最大限额
     */
    private BigDecimal couponMaxLimit;
    
    /**
     * 商品订单金额
     */
    private BigDecimal goodsOrderAmount;
    
    /**
     * 票房订单金额
     */
    private BigDecimal ticketOrderAmount;
    
    /**
     * 卖品订单金额
     */
    private BigDecimal snackOrderAmount;
    
    /**
     * 券支付金额
     */
    private BigDecimal couponPayAmount;
    
    /**
     * 券支付票房金额
     */
    private BigDecimal couponPayTicketAmount;
    
    /**
     * 券支付卖品金额
     */
    private BigDecimal couponPaySnackAmount;
    
    /**
     * 券价值减券支付
     */
    private BigDecimal couponValueMinusPay;
    
    /**
     * 券售价减券支付
     */
    private BigDecimal couponPriceMinusPay;
    
    /**
     * 订单补差金额
     */
    private BigDecimal orderDiffAmount;
    
    /**
     * 补贴方
     */
    private String subsidyParty;
    
    /**
     * 补贴金额
     */
    private BigDecimal subsidyAmount;
    
    /**
     * 商品信息
     */
    private String goodsInfo;
    
    /**
     * 放映日期
     */
    private LocalDate showDate;
    
    /**
     * 放映时间
     */
    private LocalTime showTime;
    
    /**
     * 影厅
     */
    private String hallName;
    
    /**
     * 券发行时间
     */
    private LocalDateTime couponIssueTime;
    
    /**
     * 发券影城名称
     */
    private String issueCinemaName;
    
    /**
     * 发券影城编码
     */
    private String issueCinemaCode;
    
    /**
     * 发券影城所属区域
     */
    private String issueCinemaArea;
    
    /**
     * 操作员工号
     */
    private String operatorEmployeeNo;
    
    /**
     * 操作员
     */
    private String operator;
    
    /**
     * 券销售员工号
     */
    private String couponSaleEmployeeNo;
    
    /**
     * 券销售员
     */
    private String couponSaleEmployee;
    
    /**
     * 发券影城所属区域编码
     */
    private String issueCinemaAreaCode;
    
    /**
     * 回兑影城所属区域编码
     */
    private String redeemCinemaAreaCode;
    
    /**
     * 影厅编码
     */
    private String hallCode;
    
    /**
     * 会员ID
     */
    private String memberId;

    /**
     * 券码有效期
     */
    private String couponValidityPeriod;

    /**
     * 流向客户名称
     */
    private String customerName;

    /**
     * 流向客户外部编码
     */
    private String customerExternalCode;

    /**
     * 数据所属日期
     */
    @ApiModelProperty(value = "数据所属日期")
    private String searchDate;
} 